package com.yyfax.pay.config.data.service;

import java.util.List;

import com.yyfax.pay.config.model.po.PaymentQuotaPO;

/**
 * 商户支付限额信息
 * 
 * @author changxd
 * @date 2017-04-13
 * @since TODO(说明当前修改版本号)
 */
public interface PaymentQuotaService {
	/**
	 * 新增商户支付限额信息
	 * 
	 * @author changxd
	 * @date 2017-04-13 14:38:31
	 * @since 1.0.0
	 * @return
	 */
	public int save(PaymentQuotaPO config) throws Exception;

	/**
	 * 更新商户支付限额信息
	 * 
	 * @author changxd
	 * @date 2017-04-13 14:38:35
	 * @since 1.0.0
	 * @return
	 */
	public int modify(PaymentQuotaPO config) throws Exception;

	/**
	 * 根据商户号支付号查询商户支付限额信息
	 * 
	 * @author changxd
	 * @date 2017-04-13
	 * @since 1.0.0
	 * @param merchantCode
	 * @param paymentCode
	 * @return
	 */
	public List<PaymentQuotaPO> queryByMerAndPay(String merchantCode, String paymentCode) throws Exception;
	
	/**
	 * 
	 * 查询限额信息
	 * 
	 * @author buyi
	 * @date 2017-09-13 11:12:10
	 * @since v2.0.0
	 *
	 * @param merchantCode
	 * @param paymentCode
	 * @param bankCode
	 * @param subjectType
	 * @param payMode
	 * @return
	 * @throws Exception 
	 */
	public PaymentQuotaPO query(String merchantCode, String paymentCode, String bankCode, String subjectType, String payMode) throws Exception;

	/**
	 * 查询全部商户支付限额信息
	 * 
	 * @author changxd
	 * @date 2017-04-13
	 * @since 1.0.0
	 * @return
	 */
	public List<PaymentQuotaPO> queryForList() throws Exception;

	/**
	 * 查询全部商户支付限额信息
	 * 
	 * @author changxd
	 * @date 2017-04-13
	 * @since 1.0.0
	 * @return
	 */
	public PaymentQuotaPO queryById(int id) throws Exception;
}
